package org.agony2d.display.core.supportClasses {
	import org.agony2d.core.agony_internal
	import org.agony2d.display.core.NodeUU;
	import org.agony2d.notify.AEvent
	import org.agony2d.notify.Notifier;
	
	use namespace agony_internal;
	
public class NodeComp extends RecyclableComp {
  
	public function NodeComp() {
		m_notifier = new Notifier(null)
	}
	
	public function get interactive() : Boolean { 
		return m_intouchable
	}
	
	public function set interactive( b:Boolean ) : void {
		if (m_intouchable == b) {
			m_intouchable = !b
		}
	}
	
	override agony_internal function reset() : void {
		super.reset()
		if (m_intouchable) {
			m_intouchable = false
		}
		if (!this.visible) {
			this.visible = true
		}
		this.filters = null
	}
	
	
	agony_internal var m_notifier:Notifier
	agony_internal var m_proxy:NodeUU
	agony_internal var m_cid:uint
	agony_internal var m_intouchable:Boolean
	
	
	override agony_internal function dispose() : void {
		m_notifier.removeAllListeners()
		super.dispose()
		m_proxy = null
		this.recycle()
	}
}
}